//////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////// 
// Generate a mesh from 3D mesh


#ifndef BOUNDARY_FROM_3D_MESH_H
#define BOUNDARY_FROM_3D_MESH_H

#include <vector>
#include "ctopology/topology.hpp"
#include "topology/tetratopology.h"


using namespace std;

// class baseOnBoundaryMesh
//////////////////////////////////////////////////////////////////////////
class boundaryFrom3DMesh
{
public:
  boundaryFrom3DMesh(void);
  ~boundaryFrom3DMesh(void);

  // process
  bool process (tetraTopology *tetratopol);

  // clear all information
  void clear ();

    // map node from tetraTopol and surfTopol;
  vector<int> m_mapNode;
  vector<int> m_invMapNode;

  cTopology *m_boundary;

};

#endif